// +----------------------------------------------------------------------
// | Manong.Cloud [ 领酷码农云 ]
// +----------------------------------------------------------------------
// | Copyright (c) 2020 http://www.manong.cloud All rights reserved.
// +----------------------------------------------------------------------
// | Author: 稻草人 <qinuoyun@qq.com>
// +----------------------------------------------------------------------
// | Member: 围棋 飘逸者 Loumt Silence24
// +----------------------------------------------------------------------
//加载系统路径
import path from 'path';

/**
 * 以下方法用于获取数据结构
 * @type {[type]}
 */
const getControllersPath = require.context('../../controllers', true, /.js$/);
const controllers = {}
getControllersPath.keys().map((item, index) => {
  let baseName = path.basename(item, '.js')
  const component = getControllersPath(item);
  controllers[baseName] = component.default || component;
}, {})

//加载所有控制器文件
global.__controllers__ = controllers;


/**
 * 获取文件路径
 * @param value
 * @returns {*}
 */
const getFilePath = function (value) {
  value = value.replace(/\.\//, '')
  value = value.replace(/\.js/, '')
  return value
}

/**
 * 以下方法用于获取数据结构
 * @type {[type]}
 */
const getModulesPath = require.context("../../modules", true, /.js$/);
const modules = {}

getModulesPath.keys().map((item, index) => {
  const nameArray = getFilePath(item).split('/')
  if (nameArray.length === 2) {
    let baseName = nameArray[0] + '.' + nameArray[1];
    const component = getModulesPath(item);
    modules[baseName] = component.default || component;
  }
}, {})

//加载所有控制器文件
global.__modules__ = modules;
